<p>Overriding or shadowing a variable declared in an outer scope can strongly impact the readability, and therefore the maintainability, of a piece of
code. Further, it could lead maintainers to introduce bugs because they think they're using one variable but are really using another.</p>
<h2>Noncompliant Code Example</h2>
<pre>
class Foo {
  public int myField;

  public void doSomething() {
    int myField = 0;
    ...
  }
}
</pre>
<h2>See</h2>
<ul>
  <li> <a href="https://wiki.sei.cmu.edu/confluence/display/c/DCL01-C.+Do+not+reuse+variable+names+in+subscopes">CERT, DCL01-C.</a> - Do not reuse
  variable names in subscopes </li>
  <li> <a href="https://wiki.sei.cmu.edu/confluence/display/java/DCL51-J.+Do+not+shadow+or+obscure+identifiers+in+subscopes">CERT, DCL51-J.</a> - Do
  not shadow or obscure identifiers in subscopes </li>
</ul>

